﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;
using PSE.Deployment.SetupBase.Configuration;

namespace Deployment.Manager.Configuration
{
    [Serializable]
    [XmlType(TypeName="Deployment.Manager.Configuration.SystemInfo")]
    public class SystemInfo
    {
        [XmlAttribute()]
        public string Id { get; set; }
        [XmlAttribute()]
        public string Description { get; set; }
        public List<SystemInfo> Dependencies { get; set; }
        public List<SystemInfo> Children { get; set; }
        public List<Release> Releases { get; set; }
        public List<TeamProject> TeamProjects { get; set; }
        public List<Group> InternalGroups { get; set; }
        public List<Group> ExternalGroups { get; set; }
        public List<BuildInfo> Builds { get; set; }
        public Branch CompiledPath;

        public SystemInfo()
        {
            InternalGroups = new List<Group>();
            ExternalGroups = new List<Group>();
            CompiledPath = new Branch();
            Builds = new List<BuildInfo>();
        }
    }
}
